// Product options styles
.product-options-box {
  margin: 20px 0;
  
  .options-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
    color: #333;
  }
  
  .product-option-group {
    margin-bottom: 20px;
    
    &.error {
      .option-group-title {
        color: #dc3545;
      }
      
      .option-values {
        border: 1px solid #dc3545;
        border-radius: 4px;
        padding: 10px;
      }
    }
    
    .option-group-title {
      font-size: 14px;
      font-weight: 500;
      margin-bottom: 10px;
      color: #555;
      
      .text-danger {
        margin-left: 2px;
      }
    }
    
    .option-values {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    
    .option-value-item {
      display: flex;
      align-items: center;
      padding: 8px 12px;
      border: 1px solid #dee2e6;
      border-radius: 6px;
      background: #fff;
      cursor: pointer;
      transition: all 0.2s ease;
      min-height: 40px;
      position: relative;
      
      &:hover {
        border-color: #0d6efd;
        box-shadow: 0 2px 4px rgba(13, 110, 253, 0.15);
      }
      
      &.selected {
        border-color: #0d6efd;
        background: #e7f1ff;
        color: #0d6efd;
        
        .option-checkbox {
          opacity: 1;
        }
      }
      
      .option-image-container {
        width: 30px;
        height: 30px;
        border-radius: 4px;
        overflow: hidden;
        margin-right: 8px;
        flex-shrink: 0;
        
        .option-value-image {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }
      
      .option-content {
        flex: 1;
        display: flex;
        flex-direction: column;
        
        .option-text {
          font-size: 14px;
          line-height: 1.2;
          margin-bottom: 2px;
        }
        
        .option-price-adjustment {
          font-size: 12px;
          color: #28a745;
          font-weight: 500;
          
          &:before {
            content: '(';
          }
          
          &:after {
            content: ')';
          }
        }
      }
      
      .option-checkbox {
        position: absolute;
        top: 4px;
        right: 4px;
        width: 16px;
        height: 16px;
        opacity: 0;
        transition: opacity 0.2s ease;
        pointer-events: none;
      }
    }
  }
}

// Responsive design
@media (max-width: 768px) {
  .product-options-box {
    .option-values {
      gap: 8px;
    }
    
    .option-value-item {
      padding: 6px 10px;
      min-height: 36px;
      
      .option-content {
        .option-text {
          font-size: 13px;
        }
        
        .option-price-adjustment {
          font-size: 11px;
        }
      }
      
      .option-image-container {
        width: 24px;
        height: 24px;
        margin-right: 6px;
      }
    }
  }
}

// Dark theme support
@media (prefers-color-scheme: dark) {
  .product-options-box {
    .options-title {
      color: #f8f9fa;
    }
    
    .option-group-title {
      color: #dee2e6;
    }
    
    .option-value-item {
      background: #343a40;
      border-color: #495057;
      color: #f8f9fa;
      
      &:hover {
        border-color: #0d6efd;
        background: #495057;
      }
      
      &.selected {
        background: #1e3a5f;
        border-color: #0d6efd;
        color: #79c0ff;
      }
    }
  }
}